package com.dtx.composite;

/**
 * Main类将使用以上的类建成下面这样的文件夹结构。在Main类中,我们首先新建root,bin,tmp,usr这4个文件夹,
 * 然后在bin文件夹中放入vi文件和latex文件。
 * 接着,我们在usr文件夹下新建yuki,hanako,tomura这个文件夹,然后将这3个用户各自的文件分别放入到这些文件夹中。
 *
 * 请注意,再放入了个用户的文件后,root文件夹变大了。
 */
public class CompositeMain {

    public static void main(String[] args) {
        try {
            System.out.println("Making root entries ..................");
            Directory rootDir = new Directory("root");
            Directory binDir = new Directory("bin");
            Directory tmpDir = new Directory("tmp");
            Directory usrDir = new Directory("usr");
            rootDir.add(binDir);
            rootDir.add(tmpDir);
            rootDir.add(usrDir);
            binDir.add(new File("vi",10000));
            binDir.add(new File("latex",20000));
            rootDir.printList();

            System.out.println("");
            System.out.println("Making user entries ..................");
            Directory yuki = new Directory("yuki");
            Directory hanako = new Directory("hanako");
            Directory tomura = new Directory("tomura");
            usrDir.add(yuki);
            usrDir.add(hanako);
            usrDir.add(tomura);
            yuki.add(new File("diary.html",100));
            yuki.add(new File("Composite.java",200));
            hanako.add(new File("memo.tex",300));
            tomura.add(new File("game.doc",400));
            tomura.add(new File("junk.mail",500));
            rootDir.printList();
        } catch (FileTreatmentException e) {
            e.printStackTrace();
        }


    }
}
